I. Field of the Disclosure
The technology of the disclosure relates to multiprocessors, wherein each processor core of the multiprocessor has its own local cache and shares a common cache and/or main memory.
II. Background
A processor cache can be configured to implement a write-back cache policy or a write-through cache policy. A write-through cache policy writes-through all data stored in the cache to a next-level cache(s). For example, a first-level write-through cache can write-through all data stored in the first-level cache to a next-level cache. A write-through cache policy ensures that each first-level cache does not contain dirty data, because the data stored in the cache is written through to the next-level cache. However, writing through every data store to a next-level cache consumes additional power due to writing through data to the next level cache. As such, a write-through cache policy may not be ideal for lower-power devices.
On the other hand, a cache configured with a write-back cache policy (i.e., a write-back cache) collects dirty data in the cache until eviction. Write-back caches may consume less power, because writes to the first-level cache are collected and not written-through before eviction. However, a multiprocessor system including write-back caches may be more complicated. For example, dirty data in the write-back caches may need to be snooped out to provide data coherency. Furthermore, during design and testing phases, debugging data coherency issues can consume time.